﻿Public Class xtf_LISTADOpersonal_

    Public Overrides Sub IniciarLista()
        Try
            gdc_general.BeginUpdate()
            gdc_general.DataSource = dtt_DataTable
            'ulg_Lista.DisplayLayout.GroupByBox.Style = Infragistics.Win.UltraWinGrid.GroupByBoxStyle.Full

            'Creacion y carga de Cuentas
            dtt_DataTable.Columns.Add("Identificador (ID)")
            dtt_DataTable.Columns.Add("Legajo")
            dtt_DataTable.Columns.Add("Iniciales")
            dtt_DataTable.Columns.Add("Nombres")
            dtt_DataTable.Columns.Add("Apellido")
            dtt_DataTable.Columns.Add("Nro. Fiscal")
            dtt_DataTable.Columns.Add("E-Mail")
            dtt_DataTable.Columns.Add("Tipo Documento")
            dtt_DataTable.Columns.Add("Número Documento")
            dtt_DataTable.Columns.Add("Teléfono Primario")
            dtt_DataTable.Columns.Add("EMail Primario")
            dtt_DataTable.Columns.Add("Fecha de Ingreso")
            dtt_DataTable.Columns.Add("Fecha de Egreso")
            dtt_DataTable.Columns.Add("Horario")
            dtt_DataTable.Columns.Add("Sector")
            dtt_DataTable.Columns.Add("Cargo")
            dtt_DataTable.Columns.Add("Numero de Interno")
            dtt_DataTable.Columns.Add("CC/Orden")
            dtt_DataTable.Columns.Add("Cuño")
            dtt_DataTable.Columns.Add("Personal contratado")


            gdv_general.PopulateColumns(dtt_DataTable)

            Dim obj_Personal_ As New cls_personal_
            If obj_Personal_.CargarTodos(ObtenerRegistroEstado) Then
                For Each Personal As cls_personal_ In obj_Personal_.Items
                    AgregarItem(Personal)
                Next
            End If
            'ulg_Lista.DataBind()

            FiltrarColumnas()
            gdc_general.EndUpdate()
        Catch ex As Exception
            'Dim frmError As New frm_ErrorManager(ex.Message)
        End Try
    End Sub

    Public Function AgregarItem(ByRef Personal As cls_personal_) As DataRow
        Dim Row As DataRow = dtt_DataTable.NewRow

        Row("Identificador (ID)") = Personal.idpersonal
        Row("Legajo") = Personal.legajo
        Row("Iniciales") = Personal.iniciales
        Row("Nombres") = Personal.tercero.nombres
        Row("Apellido") = Personal.tercero.apellido
        Row("Nro. Fiscal") = Personal.tercero.numerofiscal
        Row("E-Mail") = Personal.tercero.emailprimario
        If Not IsNothing(Personal.tercero.tipodocumento) Then
            Row("Tipo Documento") = Personal.tercero.tipodocumento
        End If
        Row("Número Documento") = Personal.tercero.numeroducumento
        Row("Fecha de Ingreso") = Personal.fechaegreso
        Row("Fecha de Egreso") = Personal.fechaegreso
        Row("Horario") = Personal.tercero.horario
        Row("Numero de Interno") = Personal.numerointerno

        If Not IsNothing(Personal.sector) Then
            Row("Sector") = Personal.sector.ToString
        End If
        If Not IsNothing(Personal.tercero.emailprimario) Then
            Row("Cargo") = Personal.cargo.ToString
        End If
        If Not IsNothing(Personal.tercero.telefonoprimario) Then
            Row("Teléfono Primario") = Personal.tercero.telefonoprimario.ToString
        End If
        If Not IsNothing(Personal.tercero.emailprimario) Then
            Row("EMail Primario") = Personal.tercero.emailprimario.ToString
        End If
        If Not IsNothing(Personal.centrocostoorden) Then
            Row("CC/Orden") = Personal.centrocostoorden.ToString
        End If
        If Not IsNothing(Personal.proveedor) Then
            Row("Personal contratado") = Personal.proveedor.ToString
        End If
        Row("Cuño") = Personal.cuño

        dtt_DataTable.Rows.Add(Row)
        'ulg_Lista.Rows(ulg_Lista.Rows.Count - 1).Height = 19
        Return Row
    End Function

    Public Sub ModificarItem(ByRef Personal As cls_personal_, ByRef ulg_row As DataRow)
        ulg_row("Identificador (ID)") = Personal.idpersonal
        ulg_row("Legajo") = Personal.legajo
        ulg_row("Iniciales") = Personal.iniciales
        ulg_row("Nombres") = Personal.tercero.nombres
        ulg_row("Apellido") = Personal.tercero.apellido
        ulg_row("Nro. Fiscal") = Personal.tercero.numerofiscal
        ulg_row("E-Mail") = Personal.tercero.emailprimario
        If Not IsNothing(Personal.tercero.tipodocumento) Then
            ulg_row("Tipo Documento") = Personal.tercero.tipodocumento
        End If
        ulg_row("Número Documento") = Personal.tercero.numeroducumento
        ulg_row("Fecha de Ingreso") = Personal.fechaegreso
        ulg_row("Fecha de Egreso") = Personal.fechaegreso
        ulg_row("Horario") = Personal.tercero.horario
        ulg_row("Numero de Interno") = Personal.numerointerno

        If Not IsNothing(Personal.sector) Then
            ulg_row("Sector") = Personal.sector.ToString
        End If
        If Not IsNothing(Personal.tercero.emailprimario) Then
            ulg_row("Cargo") = Personal.cargo.ToString
        End If
        If Not IsNothing(Personal.tercero.telefonoprimario) Then
            ulg_row("Teléfono Primario") = Personal.tercero.telefonoprimario.ToString
        End If
        If Not IsNothing(Personal.tercero.emailprimario) Then
            ulg_row("EMail Primario") = Personal.tercero.emailprimario.ToString
        End If
        If Not IsNothing(Personal.centrocostoorden) Then
            ulg_row("CC/Orden") = Personal.centrocostoorden.ToString
        End If
        If Not IsNothing(Personal.proveedor) Then
            ulg_row("Personal contratado") = Personal.proveedor.ToString
        End If
        ulg_row("Cuño") = Personal.cuño

    End Sub

    Public Sub New()

        Me.Cursor = Cursors.WaitCursor
        InitializeComponent()
        PERMISONuevo = "006001002"
        PERMISOModificar = "006001003"
        PERMISOEliminar = "006001004"
        PERMISOImprimir = "006001005"
        Me.Text = lbl_modulo.Text : lbl_modulodescripcion.Text = "Listado de " & lbl_modulo.Text & "."
        IniciarLista()
        Me.Cursor = Cursors.Default

    End Sub

End Class